/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.llantas.vista;

import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
import mx.llantas.Bl.ArticuloblLocal;
import mx.llantas.Bl.DetalleventablLocal;
import mx.llantas.Bl.VendedorblLocal;
import mx.llantas.Bl.VentablLocal;
import mx.llantas.modelo.Articulo;
import mx.llantas.modelo.Detalleventa;
import mx.llantas.modelo.Vendedor;
import mx.llantas.modelo.Venta;

/**
 *
 * @author manuel
 */
@ManagedBean
@SessionScoped
public class DetalleBean {
    @EJB
    private VentablLocal ventabl;
    @EJB
    private DetalleventablLocal detalleventabl;
    @EJB
    private ArticuloblLocal articulobl;
       @EJB
    private VendedorblLocal vendedorbl;
    
    private List<Articulo> listaArticulos;
    private List<Detalleventa> listadetalles;
    private Articulo articulo;
    private Detalleventa detalle;
    private String Codigoarticulo; 
    private String accion;
    private List<Venta> listaventas;
    private int idventaseleccionada;
     private int idVendedorSleccionado;
    private List<Vendedor> listaVendedores;
    
    public DetalleBean() {
        detalle =new Detalleventa();
        listaArticulos = new ArrayList<Articulo>();
    }

    public List<Articulo> getListaArticulos() {
        return listaArticulos;
    }

    public List<Venta> getListaventas() {
   listaventas=ventabl.getAll();
        return listaventas;
    }

    public List<Vendedor> getListaVendedores() {
        listaVendedores=vendedorbl.getAll();
        return listaVendedores;
    }
public String preparavendedor(){
    detalle.setIddetalleVenta(idVendedorSleccionado);
    return "DetalleConfirmar";
}
    public int getIdVendedorSleccionado() {
        return idVendedorSleccionado;
    }

    public void setIdVendedorSleccionado(int idVendedorSleccionado) {
        this.idVendedorSleccionado = idVendedorSleccionado;
    }


    public List<Detalleventa> getListadetalles() {
        return listadetalles;
    }

    public void setListadetalles(List<Detalleventa> listadetalles) {
        this.listadetalles = listadetalles;
    }

    public Articulo getArticulo() {
        return articulo;
    }

    public void setArticulo(Articulo articulo) {
        this.articulo = articulo;
    }

    public Detalleventa getDetalle() {
        return detalle;
    }

    public void setDetalle(Detalleventa detalle) {
        this.detalle = detalle;
    }

    public String getCodigoarticulo() {
        return Codigoarticulo;
    }

    public void setCodigoarticulo(String Codigoarticulo) {
        this.Codigoarticulo = Codigoarticulo;
    }

    public int getIdventaseleccionada() {
        return idventaseleccionada;
    }

    public void setIdventaseleccionada(int idventaseleccionada) {
        this.idventaseleccionada = idventaseleccionada;
    }
  
    public List<Detalleventa> getListaUsuario(){
        listadetalles=detalleventabl.getAll();
        return listadetalles;
    }
       public List<Articulo> getListaPrestamos(){
        listaArticulos=articulobl.getAll();
        return listaArticulos;
    }
        public String procesarAccion(){
   
    detalleventabl.register(detalle);
    accion="";
    return "ListaDetalle";
}    
       
  public void prepararNuevo(ActionEvent evt){
    detalle= new Detalleventa(); 
  listaArticulos=new ArrayList<Articulo>();
}
 public void procesarSeleccion(ActionEvent evt){
     detalle.setVentaIdventa(ventabl.findById(idventaseleccionada));
 
     }
  
   public void eliminar(ActionEvent evt){
int index=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
listaArticulos.remove(index);         
 }    
  public void agraegarLibro(ActionEvent evt){
      Articulo l=articulobl.findByClaveForLend(Codigoarticulo);
 if(l!=null){
        listaArticulos.add(l);
}
}
}
